home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Workbench Design
/
WB Collection.iso
/
workbench werkzeuge
/
wbgames
/
minesweeper
/
minesdoc.deutsch
< prev
next >
Wrap
Text File
|
1996-04-07
|
13KB
|
261 lines
M M I N N EEEE SSS W W EEEE EEEE PPP EEEE RRR - ¤¤¤¤¤
MM MM I NN N E S W W E E P P E R R - ¤¤ ¤¤
M M M I N NN EEE SS W W W EE EE PPP EE RRR - ¤¤¤¤¤
M M I N N E S W W W E E P E R R - ¤¤
M M I N N EEEE SSS W W EEEE EEEE P EEEE R R - ¤¤
MinesweeperPASCAL 1.8 (2.8.1995)
- VORWORT -
Minesweeper (engl. Minensucher) ist ein Spiel, daß serienmäßig bei
Windows 3.1 (IBM-Kompatible) mitgeliefert wird, mich aber so ge-
fesselt hat, daß ich es gleich auf meinem Amiga programmieren mußte.
Nach einem Minimum an Vorbereitungszeit fing ich gleich an, imple-
mentierte ein paar zusätzliche Funktionen und ... spielte !!!
Da ich den anderen Amigabesitzern dieses Programm bestimmt nicht
vorenthalten wollte, entschloß ich mich, dieses meiner Meinung nach
ganz gut gelungene Programm der breiten Öffentlichkeit über eine
weitverbreitete PublicDomain-Serie zugänglich zu machen.
Nach einigen weiteren Erweiterungen wie z.B. der Möglichkeit, MED-
Stücke abspielen zu lassen, machte ich mich daran, diese hoffentlich
lesbare Anleitung zu schreiben.
Das "PASCAL" im Namen steht für die verwendete Sprache und habe ich
erst später hinzugefügt, genauer nach der Minesweeper-Schwemme. Der
Einfachheit wegen wird das Programm im Weiteren nur Minesweeper
genannt.
Ich hoffe, daß Ihnen das Ergebnis meiner Mühen ein bißchen gefällt
und Sie genauso fesselt wie mich,
Ihr Axel Dörfler
- COPYRIGHT -
Das Programm ist frei kopierbar und darf auf PD-Serien wie FredFish
und in MailBoxen verbreitet werden, solange die folgenden Dateien
enthalten sind:
MinesweeperPASCAL - Hauptprogramm
MinesweeperPASCAL.info - Piktogramm für`s Hauptprogramm
Minesdoc.deutsch
Minesdoc.english - Englische & deutsche Dokumentation
Die Datei Mines.prefs muß nicht dabei sein. Die Rechte am Programm
bleiben aber auf jeden Fall bei mir.
Auch sollte eine Diskette mit MinesweeperPASCAL nicht mehr als 5,- DM
oder die entsprechende Summe in anderen Währungen kosten.
- DIE BEDIENUNG -
Nach dem Starten des Programmes hinterläßt dieses ein Fenster mit
recht vielen Rechtecken und einer Anzeigetafel am oberen Ende des
Fensters:
--------------------------------------------
| 10| | ? | | 1| 0| < Zeitanzeige
--------------------------------------------
^ ^ ^
Anzahl der noch Neustart Anzahl der hinter-
verbleibenden einander erfolgreich
Bomben abgeschlossener
Spiele
Das klingt reichlich logisch, und deswegen erspar ich mir weitere
(überflüssige) Bemerkungen dazu und wende mich ganz den beiden
Menüs zu:
Projekt Einstellungen
Neu Anfänger Die drei
Info... Fortgeschrittener } verschiedenen
Zeige Rekorde Profi Level und einer
~~~~~~~~~~~~~ Selbstdefiniert für eigene Ein-
Ende ~~~~~~~~~~~~~~~~~ stellungen
^ Musik <-- Musik ein- oder ausschalten
Zu diesem Menü bedarf Andere Musik <-- Möglichkeit einer Wahl
es ja wohl keiner weiteren eines anderen Med-Modules
Erläuterungen (hoffe ich!) Sprache <-- Deutsch oder Englisch (nur OS2.0)
und noch mal genauer :
-- DIE LEVELS -
Die verschiedenen wählbaren Schwierigkeitsstufen sind
Anfänger : Ein 8x8 Rechtecke großes Spielfeld mit
insgesamt 10 von Ihnen aufzufindenen Bomben.
Fortgeschrittener : Ein etwas schwieriger zu meisterndes 16x16
Spielfeld mit ganzen 40 Bomben.
Profi : Trägt seinen Namen zu Recht, ein 30x16 Felder großes
Spielfeld mit 99(!) Bomben (wirklich schwierig).
Selbstdefiniert : Dieser Modus dient dazu, sich eigene Level zu
erschaffen um sich somit schwierigeren oder auch
leichteren Leveln aussetzen zu können. Die Werte
werden in einem einfachen Requester eingegeben.
-- DIE SPRACHEN -
An verschiedenen Sprachen sind bisher zwei integriert (langt auch), und
zwar DEUTSCH & ENGLISCH. Wenn Minesweeper unter Kickstart 2.0 läuft
gibt es den Menüpunkt "Sprache", wo Sie die aktuelle Sprache einstellen
können.
Ab Workbench 2.1 verschwindet das Menü und stattdessen werden die Ein-
stellungen in den Locale-Prefs verwendet, um die aktuelle Sprache zu
wählen.
-- MUSIK -
Das Abspielen funktioniert einwandfrei, solange sich die MEDPlayer.library
von T. Kinnunen im LIBS: Verzeichnis befindet.
Falls jemand den Quellcode von mir "bestellt", bekommt er deswegen
auch gleich die nötigen selbst(um)geschriebenen Includes mitgeliefert.
Die MEDPlayer.library befindet sich z.B auf Fish-Disk 483, und ist
frei kopierbar, unter Umständen befindet sie sich auch auf dieser
Diskette.
- DAS SPIEL -
Das Spielen an sich ist eigentlich schrecklich einfach, nur dabei eine hohe
Geschwindigkeit zu entwickeln ist nicht nur eine Sache der Übung sondern
auch und vor allem eine Sache des schnellen logischen Denkens.
Am Anfang wählt man sich irgendeines der Felder, z.B. das in der linken-
oberen Ecke. Nehmen wir einmal an, es würde eine '1' erscheinen.
Das würde bedeuten, daß die direkt anliegenden Felder genau eine Bombe be-
inhalten:
------------------- Bei einem dieser Fragezeichen liegt also
| 1 | ? | | | auf jeden Fall eine Bombe!
------------------- Klickt man jetzt z.B. auf gut gelingen
| ? | ? | | | die rechts und unterhalb gelegenen Felder
------------------ an und rein zufällig zeigen beide einsen,
| | | | | ist nur noch ein logisches Feld möglich:
------------------
| | ----------------
| 1 | 1 | ? |
Das mit dem Ausrufezeichen markierte ----------------
Feld ist das mit der Bombe, da das | 1 | ! | ? |
Feld oben-links nur diese eine sehen ---------------
kann! Aus diesem Grunde kann man alle | ? | ? | |
mit dem Fragezeichen markierten --------------
Felder aufdecken, da dort keine Bomben | |
mehr sein können. Bomben kann und sollte
man übrigens mit der rechten Maustaste
markieren und so vor versehentlichem Drücken bewahren! Klickt man auf ein
bereits aufgedecktes oder markiertes Feld, erscheint ein Rahmen um dieses
und alle umliegenden Felder um den "Bombenzählprozeß" zu beschleunigen.
Klickt man auf eine noch nicht markierte Bombe, so werden alle noch ver-
bleibenden Bomben angezeigt und es bleibt einem nichts anderes übrig, als
ein neues Spiel anzufangen (was man (ich) auch meistens tut (tue)).
- WISSENSWERTES -
Da Minesweeper auch mal unter Kickstart 1.3 funktioniert hat werden die
Gadgets (noch) nicht mit GadTools erstellt, sondern eigene Routinen ver-
wendet. Bei mehr als 4 Farben werden die Gadgets dafür (beim Runterdrücken)
recht häßlich!
Es sind zwei Arten von Rekorden möglich, einmal geht es nach der Gesch-
windigkeit und das andere Mal nach der Anzahl der hintereinander bewältigten
Spiele. Beide Arten sind zusätzlich noch durch die drei verschiedenen
Level unterteilt.
Die Rekorde und auch die sonstigen Einstellungen wie gewählte Sprache,
zuletzt angewählter Level,eigene Leveldefinition und die Musikwahl(Pfad &
Stück) werden nicht mehr im S:-Verzeichnis, sondern unter 'Mines.prefs' im
Startverzeichnis von Minesweeper abgespeichert. Diese Datei muß aber nicht
existieren und auch nicht abgespeichert werden, die Rekorde gehen dann natür-
lich verloren. Inzwischen wurde die Konfigurationsdatei stark verkürzt (auf
vorerst 394 Bytes) und in einem dem IFF ähnlichem Format abgespeichert,
das den nächsten Versionen Minesweepers die Möglichkeit gibt, die alte Datei
einlesen zu können (und wahrscheinlich auch umgekehrt).
Im NTSC-NonInterlace-Modus können seit der Version 1.49 wieder alle Zeilen
dargestellt werden, der Fortgeschrittenen- und der Profi-Level sind also wieder
so schwer wie in den anderen Auflösungen.
Da Sie sich sicher dafür interessieren, hier nun meine ganz persönlichen
Rekorde (die dazugehörige 'Mines.prefs'-Datei liegt bei):
Anfänger 4 sec, 13 Spiele in Folge (Mit Glück!!)
Fortgeschrittener 35 sec, 7 "" in ""
Profi 121 sec, 3 "" in ""
Die Probleme die Minesweeper beim Arbeiten mit anderen (größeren) Fonts
hatte, sind bereits seit längerer Zeit beseitigt. Es läuft nun ab Kickstart 2.0
und höher, funktioniert jedoch nicht mehr unter Kickstart 1.3 und niedriger,
was es bis zum Erscheinen der Version 1.48 tat.
· Das Layout des Spielfenster wurde in der Version 1.8 stark überarbeitet. Der
Source wurde etwas umorganisiert.
· In der Version 1.61 kommt Minesweeper nun auch mit übergroßen Screens zurecht,
die Felder werden nicht mehr mit BOOPSI erstellt, dafür ist das Zeichnen dieser
um ein Vielfaches schneller, die Rekordanzeige sieht nun etwas schöner aus, wie
auch einige andere Layout-Dinge verschönert wurden, neues Programmicon.
· Seit Version 1.51 werden die Felder mittels BOOPSI erstellt (aus diesem Grunde
sehen die Felder unter OS2.0 anders aus als unter OS3.0!) und die Menus
erscheinen auch unter OS3.0 in den richtigen Farben.
· Ab Version 1.49 paßt Minesweeper die Größe der Felder der Auflösung an (die
Felder sind bei hohen Auflösungen (oder Interlace) nahezu rechteckig).
· Seit Version 1.48 wird die Stoppuhr jede Sekunde aufgefrischt, und nicht wie
bisher, bei jeder Aktion; ich habe den Fehler gefunden, er lag einfach darin,
daß ich die Timer-Message mit ReplyMsg() zurückgeschickt hatte!
· Die in der Version 1.39 von Minesweeper aufgetretenen Probleme mit dem Interlace-
Modus (falsches Zentrieren, falsche Größenberechnung im NTSC-Modus) sind behoben.
Der Source-Code wurde seltsamerweise mit jeder neuen Version kürzer (von 55551
Bytes in der Version 1.46 auf 50176 Bytes in der Version 1.51)!!
Alle mir bekannten Bugs habe ich inzwischen erfolgreich beseitigt, falls
Sie trotzdem irgendwelche finden, Verbesserungsvorschläge oder irgendwelche
Probleme mit Minesweeper haben, schreiben Sie (mit frankiertem & adressiertem
Rückumschlag) bitte an die untenstehende Adresse.
!! WICHTIG: Falls Minesweeper den Füllprozeß nicht zu ende führt, liegt
das an einem zu niedrig angesetzten Stack, da die Füllroutine
rekursiv füllt. Dieses Problem tritt eigentlich nur mit einem
selbstdefiniertem Level auf, in dem große Flächen zu füllen und
wenig Bomben vorhanden sind.
Bei einem Level der Größe 31x20 mit 79 Bomben langt ein Stack
von 15000 Bytes völlig aus, bei 31x20 mit 10 Bomben kann selbst
ein Stack von 30000 zu wenig sein. 35000 Bytes sollten in jedem
Fall genug sein.
- SHAREWARE-GEBÜHR -
Falls Ihnen das Programm so gut gefällt, das Sie es ständig benutzen, sollten Sie
dem Autor (mir) 10,- DM zukommen zu lassen. Dafür freut sich dieser nicht nur, sondern
schickt Ihnen neben der neuesten Version des Programmes auch dessen Quell-
code in KickPascal mit, der aus folgenden Komponenten besteht :
Minesweeper.p - Hauptprogramm
images.asm - Die Grafiken wie Bomben und ähnliches...
Gadgets.h - Vereinfachung der Gadgetbehandlung
Menu.h - Funktionen zur Umrechnung des 'Selection'-Wertes
MEDPlayer.lib - Schnittstelle zur MEDPlayer.library von T. Kinnunen
MEDPlayer.h - Strukturdefinitionen für MED-Module (MMD0,...)
Auch die MEDPlayer.library wird neben einigen Musikmodulen auf dieser Diskette
zu finden sein. Der Quellcode ist zwar nicht dokumentiert, aber gut gegliedert
und hoffentlich auch gut programmiert (Ich habe mir jedenfalls alle Mühe gegeben).
Falls Sie also an dem Quellcode des Programmes interessiert sind, können Sie die
zehn Mark an folgende Adresse schicken:
Axel Dörfler
Heerstraße 53
W-49492 Westerkappeln
(Natürlich in Deutschland)
Alle mir bekannten Bugs habe ich entfernt!
Sie können mir ganz nach Belieben auch ein paar Zeilen schreiben, vergessen
Sie aber nach Möglichkeit nicht, mir auch ihre Adresse zukommen zu lassen,
da ich sonst einige Probleme habe Ihnen eine Antwort oder auch das Programm
samt Quellcode zu schicken.